Encoding and decoding by selective inheritance

ABSTRACT

A method is provided for decoding at least one current encoded block of a first image relative to a reference block of a second image including at least one common element with the first image, wherein the reference block has been previously decoded. The method includes: filtering the decoded reference block; estimating, only on the basis of the filtered decoded reference block, at least one value of a local characteristic of the filtered decoded reference block; determining, on the basis of the estimated value of the local characteristic: a set of decoding information to be used for decoding the current block, a method for decoding the current block, on the basis of the estimated value of the local characteristic, decoding the current block on the basis of the set of determined decoding information and according to the determined decoding method.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application is a Section 371 National Stage Application ofInternational Application No. PCT/FR2013/050160, filed Jan. 25, 2013,which is incorporated herein by reference in its entirety and publishedas WO 2013/114028 on Aug. 8, 2013, not in English.

FIELD OF THE DISCLOSURE

The present invention relates to the field of signal encoding anddecoding, and in particular the encoding/decoding of video signals.

It relates in particular, but not exclusively, to 3D video applicationsthat encode/decode images from different cameras. The presentapplication similarly applies to the encoding/decoding of still images.

BACKGROUND OF THE DISCLOSURE

A 3D representation of a video can be obtained by multiplexing two views(stereo format) of the same scene, recorded by two different cameras ofa single stereoscopic device.

Two types of coding, MFC and MVC (for “Multiview Frame-compatibleCoding” and “Multiview Video Coding”) are typically used to encodeimages from two different views by exploiting redundancies between thetwo views.

Although today's market is dominated by the stereo coding format, thedevelopment of new 3D video services such as 3DTV (for “3D Television”)or FTV (for “Free-viewpoint Television”) require a fluid depiction ofthree-dimensional scenes, which can be obtained by simultaneouslymultiplexing more than two views of a 3D device. For this purpose, atleast three videos from different points of view can be captured,encoded, and transmitted in MVV (for “MultiView Video”) format, and MVCcoding can be used to encode these videos. However, the cost associatedwith MVC coding is high, especially when the number of viewpoints ishigh.

A new video coding format, called MVD (for “MultiView+Depth”), iscurrently being developed. In this format, depth cameras are used inaddition to texture (color) cameras. Each texture video is associatedwith a depth video. After coding and transmission, the reconstructedtexture and depth videos can be sent to a synthesizer which generatesthe required number of intermediate views. The advantage associated withdepth images from depth videos is that they are only composed of aluminance channel and that they primarily consist of smooth regionsseparated by edges. Thus, they are less costly to encode than textureimages issuing from texture videos. In addition, inter-view correlations(between two texture images, or between two depth images) as well asinter-component correlations (between a texture image and a depth image)can be utilized by the MVD format to improve coding efficiency, forexample using a 3DVC (“3D Video Coding”) codec.

To improve coding efficiency, the standards include a prediction ofcoding information for a current block, based on coding information forblocks previously encoded and then decoded.

Such coding information can be, for example, a motion vector. Thus, theAMVP (for “Advanced Motion Vector Prediction”) standard introduces alist of predictors for the motion vector of the current block. Only thedifference between the motion vector of the current block being codedand the best predictor (according to a rate-distortion criterion), andan index indicating the best predictor determined from among the list ofpredictors, are sent to the decoder, thereby reducing the cost oftransmitting information related to the motion vector of the currentblock. Prediction is also used to reduce the cost of transmittinginformation relating to an Intra coding mode. Intra coding consists ofcoding a block of an image based on one or more encoded then decodedblocks from this same image. Several Intra modes are defined for thispurpose, each Intra mode generally corresponding to a predictiondirection. Some Intra modes also consist of mean calculations performedon blocks neighboring the current block. These Intra modes are wellknown to those skilled in the art are not described in detail herein.

Thus, on the basis of the Intra coding, the “Most Probable Mode” or MPMis deduced for a block of an image, from the Intra modes of neighboringblocks of the same image. The MPM is then used as a predictor for codingthe Intra mode selected for coding the current block.

Inheritance of information is also used to improve coding efficiency. InHEVC coding (“High Efficiency Video Coding”), a “Merge” mode allows thecurrent block to directly inherit the motion vector and the index of thereference image for a neighboring block or for a corresponding block ina previous image (previous in the temporal sense). The inherited motionvector then does not need to be encoded, as the same principle can beapplied during decoding. However, use of the Merge mode depends on achosen rate-distortion of the coder and this therefore requiressignaling, in order to inform the decoder that Merge mode was used forencoding. Such signaling is implemented by means of a “Merge” flag inthe data sent to the decoder.

While the residual data between the current block and the blockpredicted using the inherited motion vector is determined andtransmitted in “Merge” mode, in the “Skip” mode this residual data isnot transmitted: the samples reconstructed in the decoder are themselvesinherited from the block pointed to by the motion vector. “Skip” modethus eliminates coding the residual data, but its use must still besignaled to the decoder.

In response to the requirements of the MPEG standard for 3D video coding(3DV), techniques employing both prediction and direct inheritance havebeen proposed.

The document “Description of 3D Video Coding Technology Proposal byFraunhofer HHI (HEVC compatible configuration A)”, H. Schwarz et al,m22570, November 2011, proposes systematically adding an additionalpredictor to the list of predictors of the AMVP standard. The additionalpredictor is the motion vector of the block corresponding to the currentblock in an adjacent view (inter-view prediction). An inter-viewprediction of residual data has also been introduced, in which theresidual data of the block corresponding to the current block in theadjacent view is used to predict the residual data of the current block.

In addition, the document “Description of 3D video coding technologyproposal by ETRI and Kwangwoon University”, G. Bang et al, m22625, inNovember 2011, introduced an additional prediction tool where the Intramode chosen for a reference block in a texture image corresponding to acurrent block to be coded in the associated depth image (inter-componentprediction) is added to a predetermined list of predictors in order toselect the MPM for the current block to be coded in Intra mode in thedepth image. In other words, the current block coded in this mannerindirectly inherits the Intra mode chosen for the reference block.

Indirect inheritance was used in the document “Description of 3D VideoCoding Technology Proposal by Fraunhofer HHI (HEVC compatible,configuration A)”, H. Schwarz et al, which introduced a motion parameterinheritance tool in which the entire partitioning structure and themotion vectors used, for a block of the texture image corresponding tothe current block of the depth image, is used for the current block ofthe depth image. However, the inheritance must also be signalled to thedecoder, to enable decoding the transmitted data.

Thus, regardless of the standard and type of coding used, theimplementation of inheritance is determined by evaluating therate-distortion constraints. Therefore, the selected coding mode usinginheritance, when inheritance is used to code the current block, must besignaled to the decoder so that the decoder knows the choices that weremade during coding.

A need therefore exists to improve the effectiveness of the techniquesfor encoding/decoding signals using inheritance of encoding/decodinginformation.

SUMMARY

A first aspect of the invention concerns a method for encoding at leastone current block of a first image relative to a reference block of asecond image comprising at least one element in common with the firstimage, the reference block having previously been encoded then decoded.

The method comprises the steps consisting of:

-   -   filtering said decoded reference block,    -   estimating, solely on the basis of the filtered decoded        reference block, at least one value of a local characteristic of        the filtered decoded reference block,    -   determining, on the basis of the estimated value of the local        characteristic:        -   a set of encoding information to be used for encoding the            current block,        -   a method for encoding the current block,    -   on the basis of the estimated value of the local characteristic,        encoding the current block on the basis of the determined set of        encoding information and according to the determined encoding        method.

A second aspect of the invention concerns a method for decoding at leastone encoded current block of a first image relative to a reference blockof a second image comprising at least one element in common with thefirst image, the reference block having been previously decoded.

The method comprises the steps consisting of:

-   -   filtering said decoded reference block,    -   estimating, solely on the basis of the filtered decoded        reference block, at least one value of a local characteristic of        the filtered decoded reference block;    -   determining, on the basis of the estimated value of the local        characteristic:        -   a set of decoding information to be used for decoding the            current block,        -   a method for decoding the current block,    -   on the basis of the estimated value of the local characteristic,        decoding the current block on the basis of the determined set of        decoding information and according to the determined decoding        method.

The present invention thus advantageously allows encoding/decoding acurrent block by inheritance of encoding/decoding information determinedafter an analysis of only the local characteristics of a filtereddecoded reference block. In general, “local characteristic” isunderstood to mean any information relating to the nature of the pixelsof the reference block as obtained after filtering said reference block.Such local characteristics include, for example:

-   -   a primary direction in the filtered decoded reference block, a        primary angle or a primary orientation of the filtered decoded        reference block, and/or    -   an amplitude/strength of the primary direction, and/or    -   mean intensity information for the filtered decoded reference        block, and/or    -   average chrominance or luminance information for the filtered        decoded reference block, and/or    -   mean distortion information for the decoded filtered reference        block,    -   etc.

Given that the first and second images contain a common element, such asthe same scene is depicted in both the first and second images,estimating the value of a local characteristic in the filtered decodedreference block advantageously allows deducing the level of correlation(high or low) between the second image and the first image.

Thus, the high or low reliability of the inherited encoding/decodinginformation is determined by whether the value of a local characteristicof the filtered decoded reference block is high or low. Because saidlocal characteristic is calculated only from a filtered decodedreference block, it can also be calculated independently duringdecoding, and the decoding therefore does not require receivingsignaling bits to indicate the type and value of the localcharacteristic.

The filtering applied to the decoded reference block can, for example,be used to detect the edges present in the decoded reference block. Inthis case, the value of the local characteristic is then representativeof the amplitude and/or direction of such edges.

According to some embodiments, the encoding or decoding of the currentblock, respectively according to the determined encoding or decodingmethod, is:

-   -   direct, where the encoding or decoding information of the        determined set is used as is to predict the current block,    -   indirect, where during encoding, the encoding information of the        determined set competes with predetermined encoding information        on the basis of a coding performance criterion, to select the        optimal encoding information to be used to predict the current        block, and where during decoding, the optimal encoding        information is read so as to select the corresponding decoding        information in the determined set of decoding information in        order to predict the current block.

Thus, the invention allows implementing a method for encoding/decodingby direct or indirect inheritance depending on the estimated value of alocal characteristic of a filtered decoded reference block.

The direct inheritance method allows directly using encoding information(respectively decoding information) of the reference image to encode(respectively decode) the current block. The reliability associated withthe encoding (respectively decoding) of the current block is high, asthe estimated value of the local characteristic of the filtered decodedreference block is high. Furthermore, when encoding, it is not necessaryto signal the coding information of the determined set for the decoding.The cost of the transmission between the encoder and decoder is thusreduced.

When the estimated value of the local characteristic of the filtereddecoded reference block is lower, the indirect inheritance method stillallows inheriting the encoding information (respectively decoding) forthe determined set used while encoding (respectively decoding) thecurrent block. When encoding, the encoding information for thedetermined set forms at least one new predictor which can then competewith predetermined predictors in order to select an optimal predictor.The optimal predictor is then sent to the decoder. When a new predictoris found to be relevant, it can then replace a predictor in a list ofpredetermined predictors.

According to some embodiments, during encoding and decoding, a firstthreshold and a second threshold are predetermined, the first thresholdbeing greater than the second threshold, and:

-   -   if the estimated value of the local characteristic is higher        than the first threshold, the method for direct encoding and        decoding is used;    -   if the estimated value of the local characteristic is between        the first threshold and the second threshold, the method for        indirect encoding and decoding is used;    -   otherwise, a method for encoding and decoding other than the        direct and indirect methods is used.

These embodiments thus prevent, when the estimated value of the localcharacteristic of the filtered decoded reference block is low (below thesecond threshold), replacing a predictor in a list of predictors withthe new predictor which is irrelevant in that case. It should be notedthat the invention is not limited to the use of two thresholds.Additional thresholds may be provided for comparison with the estimatedvalue of the local characteristic.

According to some embodiments, during encoding, the encoding informationincludes at least one encoding mode, or at least one encoding parameterassociated with the encoding mode, or both, and during decoding, thedecoding information includes at least one decoding mode, or at leastone decoding parameter associated with the decoding mode, or both.

“Encoding/decoding mode” is understood to mean an Intraencoding/decoding mode, an Inter encoding/decoding mode, a Skipencoding/decoding mode, the form of partitioning of a macroblock, thetype of transform (for example a DCT4×4 or DCT8×8 transform), motioninformation such as a motion vector or the precision of the resolutionof a motion vector, etc. “Parameter associated with an encoding/decodingmode” is understood to mean any information serving as a parameterintrinsic to a coding mode (for example the values of deblocking filtersor of activation or deactivation thresholds for encoding/decoding tools,etc.).

As a variant, during encoding and decoding, of images initially capturedby a plurality of image acquisition devices, each image representing agiven view, the first image corresponds to a view adjacent to the secondimage, and the current block and the reference block have identicalpositions in the first image and the second image when the position ofthe current block is corrected by a disparity vector between the view ofthe first image and the view of the second image.

These embodiments improve encoding/decoding efficiency in the case ofinter-view encoding and decoding.

According to another variant, during encoding and decoding of temporallysuccessive images captured by an image acquisition device, the firstimage corresponds to an image captured after the capture of the secondimage, and the current block and reference block represent a commonscene in the first and second images respectively.

These embodiments improve the encoding and decoding efficiency in thecase of Inter mode encoding and decoding.

In yet another variant, during encoding and decoding of texture imagescaptured in association with depth images, the first image is a depthimage and the second image is the texture image associated with thefirst image, and the current block and reference block have identicalpositions in the first image and second image respectively.

These embodiments improve the encoding and decoding efficiency in thecase of view plus depth encoding and decoding, for example in the MVDformat.

A third aspect of the invention relates to a computer program comprisinginstructions for implementing the method according to the first aspectof the invention or according to the second aspect of the invention,when this program is executed by a processor.

A fourth aspect of the invention relates to an encoder for encoding atleast one current block of a first image relative to a reference blockof a second image comprising at least one element in common with thefirst image, the reference block having been previously encoded and thendecoded.

The encoder comprises:

-   -   a unit for filtering the decoded reference block;    -   a unit for estimating, solely on the basis of the filtered        decoded reference block, at least one value of a local        characteristic of the filtered decoded reference block;    -   a unit for determining, on the basis of the estimated value of a        local characteristic:        -   a set of encoding information to be used for encoding the            current block,        -   a method for encoding the current block; and    -   an encoding unit which, on the basis of the estimated value of        the local characteristic, encodes the current block on the basis        of the determined set of encoding information and according to        the determined encoding method.

A fifth aspect of the invention relates to a decoder for decoding atleast one encoded current block of a first image relative to a referenceblock of a second image comprising at least one element in common withthe first image, the reference block having been previously decoded.

The decoder comprises:

-   -   a unit for filtering the decoded reference block;    -   a unit for estimating, solely on the basis of the filtered        decoded reference block, at least one value of a local        characteristic of the filtered decoded reference block;    -   a unit for determining, on the basis of the estimated value of        the local characteristic:        -   a set of decoding information to be used for decoding the            current block,        -   a method for decoding the current block; and    -   a decoding unit which, on the basis of the estimated value of        the local characteristic, decodes the current block on the basis        of the determined set of decoding information and according to        the determined decoding method.

A sixth aspect of the invention relates to a system comprising anencoder according to the fourth aspect of the invention and a decoderaccording to the fifth aspect of the invention, the encoder furthercomprising a transmission unit for transmitting encoded blocks to theencoder for block-based image coding.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages of the invention will be apparent from thefollowing detailed description, and from the accompanying drawings inwhich:

FIG. 1 is a diagram representing the main steps of an encoding methodaccording to the invention;

FIG. 2 is a diagram representing the main steps of a decoding methodaccording to the invention;

FIG. 3 is a diagram representing the detailed steps of the encodingmethod of FIG. 1, in one particular embodiment;

FIG. 4 is a diagram representing the detailed steps of the decodingmethod of FIG. 2, in one particular embodiment;

FIG. 5 illustrates a selective inheritance between a current block of afirst image and a reference block of a second image in a particularembodiment of the invention;

FIG. 6 illustrates a selective inheritance between a current block of afirst image and a reference block of a second image in anotherparticular embodiment of the invention;

FIG. 7 illustrates a system comprising an encoder and a decoderaccording to some embodiments.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

FIG. 1 is a diagram representing the main steps of an encoding methodaccording to the invention.

The encoding method according to the invention is applied to a currentblock of a first image relative to a reference block of a second imagecomprising at least one element in common with the first image.“Reference block” is understood to mean a block that has been previouslyencoded and then decoded. Such a decoded reference block is used forcoding the current block.

In step 10, the decoded reference block is filtered.

Such a step is performed for example using an edge detection filter todetect edges in said decoded reference block. Such a filter may be aSobel filter, a Canny filter, or some other edge detection filter.

In step 11, at least one value of a local characteristic of the filtereddecoded reference block is estimated by calculation solely on the basisof the decoded reference block.

Such a local characteristic is for example:

-   -   a primary direction in the filtered decoded reference block, a        primary angle or a primary orientation of the filtered decoded        reference block, and/or    -   an amplitude/strength of the primary direction, and/or    -   mean intensity information for the filtered decoded reference        block, and/or    -   average chrominance or luminance information for the filtered        decoded reference block, and/or    -   mean distortion information for the filtered decoded reference        block,    -   etc.

Depending on its type, the local characteristic may take one or morevalues.

In step 12, a set of encoding information to be used for encoding thecurrent block and a method for encoding the current block are determinedon the basis of the value of the local characteristic calculated in step11.

In step 13, on the basis of the value of the local characteristiccalculated in step 11, the current block is encoded on the basis of thedetermined set of encoding information and according to the determinedencoding method.

FIG. 2 is a diagram representing the main steps of a decoding methodaccording to the invention.

Images encoded in blocks according to the invention are initiallyreceived. The decoding method according to the invention is applied toan encoded current block of a first image relative to a reference blockof a second image comprising at least one element in common with thefirst image. The reference block has been previously decoded.

In step 14, the decoded reference block is filtered using the samefilter as the one used in the encoding. Thus, no information concerningthe filter to be used is sent between the encoder and the decoder.

In step 15, at least one value of a local characteristic of the filtereddecoded reference block is estimated by calculation. This step isidentical to the estimation step 11 performed during encoding.

In step 16, a set of decoding information to be used for decoding thecurrent block and a method for decoding the current block are determinedon the basis of the value of the local characteristic calculated in step15.

In step 16, on the basis of the value of the local characteristiccalculated in step 15, the current block is decoded on the basis of thedetermined set of decoding information and according to the determineddecoding method.

FIG. 3 is a diagram representing the detailed steps of the encodingmethod of FIG. 1, according to a particular embodiment of the invention.

The encoding method is preferably applied to images from at least onevideo sequence, for example video sequences which may contain imagesfrom different cameras with different views, video sequences of textureimages and corresponding depth images, or a video sequence comprisingtemporally successive images (from the same camera). In the followingdescription, the image coding is block-based.

In step 101, a current block of a first image is received by the encoderfor encoding according to the invention.

In step 102, a reference block of a second image is determined relativeto the current block. According to some embodiments of the invention:

-   -   the first image and the second image can be a single image, and        the reference block is then a neighboring block of the current        block (Intra coding);    -   the first image represents a given view from a first image        acquisition device, such as a camera, and the second image        represents a view adjacent to the given view, from a second        camera. The current block and the reference block then        respectively have identical positions in the first and second        images when the position of the current block has been corrected        by a disparity vector between the view of the first image and        the view of the second image, as detailed below in reference to        FIG. 6 (inter-view coding);    -   the first image is captured after the capture of the second        image, by the same camera, and the current block and the        reference block then represent a common scene in the first image        and second image respectively (Inter coding);    -   the first image is a depth image captured by a depth camera and        the second image is a texture image captured by a texture        (color) camera, and the current block and the reference block        have identical positions in the depth image and texture image        respectively, as detailed below in reference to FIG. 5        (inter-component coding).

The reference block is a block which has been previously coded, stillaccording to the invention. During step 102, the reference block isdecoded so that the following steps applied during encoding are the sameas the steps applied during decoding, as presented in reference to FIG.2.

In step 103, a filter is applied to the decoded reference block. Forexample, such a filter performs edge detection in said reference block.Such a filter may be a Sobel filter, a Canny filter, or some other edgedetection filter.

In step 104, at least one value of a local characteristic of thefiltered decoded reference block is calculated solely on the basis ofthe decoded then filtered reference block. The value of the localcharacteristic is, for example, obtained by determining a maximum valueof the luminance or chrominance gradient in the filtered decodedreference block, an average value of the luminance or chrominancegradient, a primary angle of the edge direction, or an indexrepresenting the mean absolute distortion (MAD), or any combination ofthe values described above.

In step 105, depending on the value of the local characteristiccalculated in step 104, a set of encoding information to be used forencoding the current block is determined. The encoding information mayrelate to an encoding mode, one or more encoding parameters associatedwith the encoding mode, or both. “Encoding mode” is understood to meanan Intra encoding mode, an Inter encoding mode, a Skip encoding mode,the form of the partitioning of a macroblock, the type of transform (forexample a DCT4×4 or DCT8×8 transform), motion information such as amotion vector or the precision of the motion vector resolution, etc.“Parameter associated with an encoding mode” is understood to mean anyinformation serving as a parameter intrinsic to an encoding mode (forexample values for deblocking filters or activation or deactivationthresholds for encoding tools, etc.).

In the following steps, a particular embodiment for determining anencoding method on the basis of the value of the local characteristiccalculated in said step 104 will now be described.

In step 106, the value of the local characteristic calculated in step104 is compared with a first threshold B. This first threshold is fixedand it is common to both the encoding and decoding. The same firstthreshold B may be used for all blocks to be coded. The value of thefirst threshold B is set differently depending on whether the value ofthe local characteristic is an average value, a maximum value, a MAD, oran angle.

If the value of the local characteristic is greater than the firstthreshold B, it is then inferred in step 107 that the correlationbetween the filtered decoded reference block and the current block ishigh. A direct inheritance encoding method is then selected for encodingthe current block. To this end, the encoding information determined instep 105 is used as is to perform predictive encoding of the currentblock.

If the value of the local characteristic calculated in step 104 is lessthan the first threshold B, said value is compared in step 108 to asecond threshold A. Again, this second threshold A is fixed and iscommon to both the encoding and decoding. The same second threshold Amay be used for all blocks to be coded. The value of the secondthreshold A is set differently depending on whether the value of thelocal characteristic is an average value, a maximum value, a MAD, or anangle.

If the calculated value of the local characteristic is between the firstthreshold B and the second threshold A, the encoding informationdetermined in step 105 is used for encoding the current block using anindirect inheritance method. For this purpose, said encoding informationis added or substituted, in step 109, into a set of candidate predictorsin order to compete in determining, according to a coding performancecriterion (rate-distortion, for example), optimal encoding information.Thus, in the case where the set of encoding information comprises agiven motion vector, the given motion vector can be added to the list ofcandidate motion vectors for the current block, for example to the listof AMVP candidates in a context of MVC coding as described above. Toavoid changing the number of vectors in the list of competingcandidates, the given motion vector can be substituted for a candidatein the list. Additionally or alternatively, when the encodinginformation determined in step 105 contains a particular coding mode,for example such as an Intra mode that is not already in the list ofcandidate Intra modes for coding the current block, for example such asa list of MPM candidates in a context of 3DVC coding as described above,the above step 109 may involve the addition (or substitution) of saidparticular Intra mode into the list of candidate Intra modes, for thepurpose of determining an optimal Intra mode.

If the value of the local characteristic calculated in step 104 is lessthan the second threshold A, then an encoding method other than thedirect and indirect inheritance methods is used in step 110 for encodingthe current block, as the correlation between the current block and thefiltered decoded reference block is considered to be too weak to use aninheritance coding method. The current block is for example encoded in aconventional manner, for example using a motion vector determined withrespect to a block corresponding to the current block in a previouslycaptured image. The use of conventional encoding, when the correlationbetween the filtered decoded reference block and the current block isweak, prevents the replacement of encoding information in apredetermined list of candidates by the encoding information determinedin step 105, which would not be relevant in this case.

After step 107, 109 or 110, the current block is encoded in step 111according to the determined encoding method and on the basis of thepreviously determined encoding information. The block encoded in thismanner is transmitted in step 112, to a decoder for example. It shouldbe noted that in the case of an indirect inheritance coding mode (afterstep 109), the optimal encoding information is transmitted in additionto the encoded current block to the decoder.

FIG. 4 is a diagram representing the detailed steps of the decodingmethod of FIG. 2, according to a particular embodiment of the invention.

In step 201, the blocks encoded according to the encoding methodillustrated in FIG. 3 are received by a decoder for example. If someblocks were encoded according to an indirect inheritance method, theoptimal encoding information is also received and read in step 201.

In step 202, the current block described above is received.

In step 203, the decoder determines the reference block to be used fordecoding the current block. The same relationship between the referenceblock and the current block is used for both encoding and decoding(Intra coding, Inter coding, inter-view coding, or inter-componentcoding). The same reference block as the one used in the encoding istherefore selected. The reference block was previously received anddecoded by the decoder. The decoded reference block used in the encodingis therefore the exact same one used in the decoding, without needing tosend signaling bits between the encoder and the decoder to indicate thereference block to use.

In step 204, a filter is applied to the decoded reference block. Thisfilter is the same filter as the one used in the encoding. Thus, noinformation about the filter to be used is sent between the encoder andthe decoder.

In step 205, at least one value of the local characteristic of thefiltered decoded reference block is calculated solely on the basis ofthe decoded then filtered reference block. The value of the localcharacteristic calculated during decoding is the same as the onecalculated during encoding, as the same reference block is consideredduring decoding. The value of the local characteristic calculated duringdecoding is either the MAD, the primary angle, the maximum luminance orchrominance value of the filtered decoded reference block, or theaverage luminance or chrominance value of said block. The localcharacteristic of the filtered decoded reference block to be analyzedduring encoding and decoding is fixed beforehand between the encoder anddecoder, to ensure that no signaling bits for this local characteristicneed to be sent between the encoder and decoder.

In step 206, depending on the value of the local characteristiccalculated in step 205, a set of decoding information to be used fordecoding the current block is determined. The decoding information mayrelate to a decoding mode, one or more decoding parameters associatedwith the decoding mode, or both. “Decoding mode” is understood to meanan Intra decoding mode, an Inter decoding mode, a Skip decoding mode,the form of the partitioning of a macroblock, the type of transform (forexample a DCT4×4 or DCT8×8 transform), motion information such a motionvector or the precision of the motion vector resolution, etc. “Parameterassociated with a decoding mode” is understood to mean any informationserving as a parameter intrinsic to a decoding mode (for example valuesfor deblocking filters or activation or deactivation thresholds fordecoding tools, etc.).

A particular embodiment for determining a decoding method on the basisof the local characteristic calculated in step 205 will now be describedin the following steps.

In step 207, the value of the local characteristic calculated in step205 is compared with the first threshold B, the first threshold beingcommon to both the encoding and decoding as previously explained.

If said calculated value is greater than the first threshold, then it isinferred in step 208 that the correlation between the decoded referenceblock and the current block is high. A direct inheritance decodingmethod is then selected for decoding the current block. To this end, thedecoding information determined in step 206 from the value of the localcharacteristic calculated in step 205 is used as is to performpredictive decoding of the current block.

If the calculated value of the local characteristic is less than thefirst threshold B, said value is compared in step 209 to the secondthreshold A, the second threshold being common to both the encoding anddecoding as previously explained.

If said calculated value is between the first threshold B and the secondthreshold A, the decoder having received and read the optimal encodinginformation with the encoded block in step 201, a direct inheritancedecoding method is then chosen for the current block. The informationamong the decoding information determined in step 206 which correspondsto the optimal encoding information is then selected in step 210 as theoptimal decoding information for decoding the current block.

If said calculated value is less than the second threshold A, then adecoding method other than the direct and indirect inheritance methodsis used in step 211 for decoding the current block, as the correlationbetween the current block and the filtered decoded reference block isconsidered to be too weak. The current block is then decoded in aconventional manner.

After step 208, step 210, or step 211, the current block is decoded instep 212 on the basis of the decoding information determined in step206. The current block decoded in this manner may then be used forfurther processing that is not part of the invention.

The invention therefore allows encoding and decoding by selectiveinheritance, meaning either encoding/decoding by direct inheritance, orencoding/decoding by indirect inheritance, or conventionalencoding/decoding, on the basis of at least one value of a localcharacteristic of a filtered decoded reference block which is determinedin the same manner in both the encoding and decoding. The stream ofsignaling bits between the encoder and decoder is thus reduced. Inaddition, the invention prevents the replacement of a predictor with anew predictor in a predetermined list of predictors, when this newpredictor is not relevant (when the value of the local characteristic isbelow the second threshold). Another advantage of the invention is thatit allows simultaneously considering methods for direct and indirectinheritance of encoding or decoding information, for encoding ordecoding the same block.

FIG. 5 illustrates coding by selective inheritance, of a current blockof a first image relative to a reference block of a second image,according to a particular embodiment of the invention.

In this particular embodiment:

-   -   the first image is a depth image 21 captured by a depth camera,        this first image being the current picture to be coded,    -   the second image is a texture image 20 captured by a texture        camera,    -   and the current block 25 in the depth image 21 has a position        identical to that of a reference block 24 in the texture image        20.

The texture image 20 and depth image 21 represent the same view. In theexample shown, they have identical partitioning structures. Thus, thetexture image 20 comprises a set of blocks 22 and the depth image 21comprises a corresponding set of blocks 23. However, the inventionapplies in the same manner when the partitioning structure of thetexture image 20 is not the same as that of the depth image 21. Forexample, when the partitioning structures are different, a decodedreference block can be determined as being a block contained in theblock corresponding to the current block, or alternatively the decodedreference block can contain the block corresponding to the currentblock.

The current block 25 and the reference block 24 thus occupy identicalpositions in the depth image 21 and in the texture image 20respectively.

The reference block 24 is considered to have already been encoded, onthe basis of Intra mode 1 for example. The reference block 24 is decodedfor the encoding or decoding of the current block.

In the invention, the decoded reference block 24 is then filtered.

On the basis of at least one calculated value of a local characteristicof the filtered decoded reference block, one or more Intra coding modescan be determined as the encoding or decoding information. For thispurpose, each range of values of the local characteristic may correspondto one or more specific Intra modes which may include, in one particularcase, the Intra mode 1 that was used to code the reference block 24. Forexample, for a value of the local characteristic of between 1000 and1500, the two Intra modes 2 and 9 are for example determined. For avalue of a local characteristic of between 1500 and 4000, a single Intramode, for example Intra mode 9, is determined. For the values of thelocal characteristic greater than 4000, a single Intra mode, for exampleIntra mode 7, is determined. In this example, the first threshold can beset at 4000 and the second threshold can be set at 1000. However, thereare no restrictions on the choice of thresholds in the sense of theinvention.

The ranges of values and the thresholds are given here by way ofillustration and are dependent on the images concerned and on the localcharacteristic concerned for the filtered decoded reference block.

If the value of the local characteristic is above the first threshold, adirect inheritance coding mode is used. As the value of the localcharacteristic is then greater than 4000, Intra mode 7 (whichcorresponds to the range of values exceeding 4000) is inherited directlyfor coding the current block. If the value of the local characteristicis between the first threshold and second threshold, one or more Intramodes can be added (or substituted) to a list of candidate Intra modesfor encoding and decoding the current block. Thus, if the value of thelocal characteristic is between 1000 and 1500, Intra modes 2 and 9 areadded (or substituted) into the list of candidate Intra modes. If thevalue of the local characteristic is between 1500 and 4000, Intra Mode 9is added (or substituted) into the list of Intra mode candidates. Anoptimal Intra mode can thus be determined by the encoder and then sentto the decoder for decoding the current block. The Intra mode(s) may forexample be added to the MPM list in 3DVC coding. If the value of thelocal characteristic is below the second threshold, the Intra mode forcoding the current block is then determined conventionally.

No restriction is placed on the number of value ranges considered forthe purposes of the invention, and the foregoing examples are providedpurely for illustrative purposes.

When Sobel filtering is applied to a decoded texture block as thedecoded reference block, the maximum value of the gradient obtained bysuch filtering is a reliable indication of the width of the edges insaid decoded texture block. If wide edges are detected, these edges arelikely to be present in the corresponding depth image, and therefore thecorrelation between the best Intra modes for the decoded reference blockand for the current block will be high since Intra modes are primarilydirectional. Thus, in some particular embodiments, the Intra modedetermined for direct or indirect inheritance can be the Intra mode thatwas used for coding the reference block. In the case where the edges areless well-defined in the filtered decoded reference block, thecorrelation between the filtered decoded reference block and the currentblock is considered to be weaker and coding by indirect inheritance ismore efficient than coding by direct inheritance.

FIG. 6 illustrates coding by selective inheritance, of a current blockof a first image relative to a reference block of a second image,according to another particular embodiment of the invention.

In this other embodiment, the first image 31 represents a given viewfrom a first image acquisition device, such as a camera, and the secondimage 30 represents a view adjacent to the given view, from a secondcamera.

A reference block 32 has been previously encoded using a motion vector34. The reference block 32 is decoded, to allow encoding or decoding acurrent block 33 of the first image 31.

A disparity vector 37 is generated between the two views, so that theposition of a current block in the first image 31 can be moved to matcha decoded block in the second image 30 illustrating a common scene 30.This disparity vector 37 can be known from the respective positions ofthe first and second cameras and may for example be determined fromdepth images corresponding to the two views.

Thus, the upper left pixel of the decoded reference block 32 correspondsto a pixel 35 shifted by the disparity vector 37.

The current block 33 that is to be encoded in relation to the decodedreference block 32 is therefore positioned in the first image 31 so thatthe upper left pixel 36 of the current block corresponds to a positionidentical to the position of the upper left pixel 35 of the referenceblock 32 in the second image 30.

For the encoding or decoding of the current block 33, at least one valueof a local characteristic of the decoded and filtered reference block 32is determined for the reference block 32, as previously explained.

Again, on the basis of the calculated value of the local characteristic,one or more motion vectors are determined as the encoding or decodinginformation for the current block. Similarly to the embodiment describedabove, each range of values for the local characteristic may correspondto one or more particular motion vectors, which in one particularexample may include the motion vector 34 used to encode/decode thereference block 32. For example, for a value of the local characteristicof between 1000 and 1500, two motion vectors that are different frommotion vector 34 are determined. For a value of the local characteristicof between 1500 and 4000, another motion vector that is again differentfrom motion vector 34 as well as from said two motion vectors isdetermined. For values of the local characteristic that are greater than4000, yet another different motion vector is determined. In thisexample, the first threshold can be set at 4000 and the second thresholdcan be set at 1000. However, there are no restrictions on the choice ofthresholds in the sense of the invention.

If the value of the local characteristic is above the first threshold,then the motion vector to be used for encoding or decoding the currentblock is directly inherited from the motion vector which was determinedwithin the range of values greater than 4000. If the value of the localcharacteristic is between the first threshold and the second threshold,the motion vector which was determined within the range of valuesbounded by the first and second thresholds is added to the list of AMVPcandidates for the current block in a context of MVC encoding ordecoding.

The motion vector fields of two adjacent views are highly correlated,particularly the edges. Thus, the maximum value of the gradient obtainedfrom Sobel filtering (or any other edge detection filter) on the decodedreference block 32 is a good estimate of the correlation existingbetween the decoded reference block 32 and the current block 33.Additionally or alternatively, the motion vector which was used toencode/decode the reference block 32 may thus also be used as the motionvector (encoding or decoding information) of the current block, in thecase of encoding/decoding by direct or indirect inheritance.

FIG. 7 illustrates a system comprising an encoder 40 and a decoder 50according to a particular embodiment of the invention.

The encoder 40 comprises a receiving unit 41 suitable for receivingimages from one or more video sequences, to be used in block-based imagecoding. Said receiving unit thus receives a current block to be encodedaccording to the invention.

The encoder also comprises a unit 42 for filtering a reference blockthat was previously encoded and then decoded. Said reference block is tobe used to encode the current block. The filtering unit 42 is forexample an edge detection filter as mentioned above in the description.

The filtering unit 42 is able to transmit the filtered decoded referenceblock to an estimation unit 43 able to estimate at least one value of alocal characteristic of said filtered decoded reference block.

From the estimated value of the local characteristic, a determinationunit 44 determines a set of encoding information for the current block,as well as a method for encoding for said current block. As previouslyexplained, the determination unit 44 thus determines:

-   -   a set of encoding information which may be one or more encoding        modes and/or one or more encoding parameters associated with one        of these modes,    -   and an encoding method which is either a direct inheritance        encoding method, or an indirect inheritance encoding method, or        a conventional encoding method.

An encoding unit 45 encodes the current block on the basis of thedetermined set of encoding information and the determined encodingmethod.

A transmission unit 46 transmits the encoded current block to thedecoder 50. When a direct inheritance encoding method has been used, thedetermined optimal encoding information is also sent to the decoder unit50 by the transmission unit 46. No restriction is placed on the means ofcommunication used between the encoder 40 and the decoder 50 in theinvention.

In a corresponding manner, the decoder 50 comprises a receiving unit 51suitable for receiving the encoded images in block form (and possiblythe optimal encoding information if the blocks were encoded by anindirect inheritance method). The receiving unit 51 receives the currentblock which has been encoded by the encoder 40.

The decoder 50 also comprises a filtering unit 52 for filtering areference block that was previously encoded and then decoded, which isto be used to decode the current block. Said reference block is the samereference block used to encode the current block. The filtering unit 52is, for example, an edge detection filter as mentioned above in thedescription.

The filtering unit 52 transmits the filtered decoded reference block toan estimation unit 53 that is able to estimate at least one value of alocal characteristic of said filtered decoded reference block.

From the estimated value of the local characteristic, a determinationunit 54 is able to derive a set of decoding information for the currentblock as well as a method for decoding the current block. As previouslyexplained, the determination unit 54 thus determines:

-   -   a set of decoding information which may be one or more decoding        modes and/or one or more parameters associated with one of these        modes,    -   and a decoding method which is either a direct inheritance        decoding method, or an indirect inheritance decoding method, or        a conventional decoding method.

A decoding unit 55 is then able to decode the current block on the basisof the determined set of decoding information and the determineddecoding method.

A transmission unit 56 transmits the decoded current block to processingdevices for the decoded current block; said devices are not part of theinvention.

The invention can thus be implemented within the encoding/decoding andthe standards presented in the introductory part of the presentapplication.

Non-limiting examples are provided here for illustrative purposes only.

For MVC coding, the maximum gradient value of the decoded then filteredreference block can be used as the value of the local characteristic, todetermine whether a current block should inherit the motion vector ofthe reference block or whether the motion vector of the reference blockshould be added to the list of AMVP candidates for prediction.

For 3DVC coding, the maximum gradient value of the decoded then filteredtexture reference block can be used as the value of the localcharacteristic, to determine whether the Intra mode of a depth imageshould inherit the Intra mode of the texture image or whether the Intramode of the texture image should be added to the list of MPM candidatesfor predicting the Intra mode of the depth image.

Alternatively, for 3DVC coding, the maximum gradient value of thedecoded then filtered texture reference block can be used as the valueof the local characteristic, to determine whether a partitioningstructure of a depth block should directly inherit the partitioningstructure of the texture block, without providing prediction. Thus, thepresent invention can also be applied in cases where the secondthreshold has a zero value. Only one comparison is then made with thefirst threshold in order to determine whether direct inheritance is tobe applied.

1. A method comprising the following acts performed by an encodingdevice: encoding at least one current block of a first image relative toa decoded reference block of a second image comprising at least oneelement in common with said first image, said reference block havingbeen previously been encoded then decoded, wherein encoding comprises:filtering the decoded reference block; estimating, solely on the basisof said filtered decoded reference block, at least one value of a localcharacteristic of the filtered decoded reference block; determining, onthe basis of the estimated value of the local characteristic: a set ofencoding information to be used for encoding the current block, a methodfor encoding the current block, on the basis of the estimated value ofthe local characteristic, encoding the current block on the basis ofsaid determined set of encoding information and according to saiddetermined encoding method.
 2. A method comprising the following actsperformed by a decoding device: decoding at least one encoded currentblock of a first image relative to a decoded reference block of a secondimage comprising at least one element in common with said first image,said reference block having previously been decoded, wherein decodingcomprises: filtering the decoded reference block; estimating, solely onthe basis of said filtered decoded reference block, at least one valueof a local characteristic of the filtered decoded reference block;determining, on the basis of the estimated value of the localcharacteristic: a set of decoding information to be used for decodingthe current block, a method for decoding the current block, on the basisof the estimated value of the local characteristic, decoding the currentblock on the basis of said determined set of decoding information andaccording to said determined decoding method.
 3. The method according toclaim 1, wherein the encoding of the current block according to saiddetermined encoding method is: direct, where the encoding information ofsaid determined set is used as is to predict the current block,indirect, where during encoding, the encoding information of saiddetermined set competes with predetermined encoding information on thebasis of a coding performance criterion, to select the optimal encodinginformation to be used to predict the current block.
 4. The methodaccording to claim 1, wherein a first threshold and a second thresholdare predetermined, said first threshold being greater than the secondthreshold, and wherein: if the estimated value of the localcharacteristic is higher than the first threshold, said method fordirect encoding is used; if the estimated value of the localcharacteristic is between the first threshold and the second threshold,said method for indirect encoding is used; otherwise, a method forencoding other than said direct and indirect methods is used.
 5. Themethod according to claim 1, wherein: said encoding information includesat least one encoding mode, or at least one encoding parameterassociated with said encoding mode, or both.
 6. The method according toclaim 1, for images initially captured by a plurality of imageacquisition devices, wherein, each image representing a given view, thefirst image corresponds to a view adjacent to the second image, andwherein the current block and the reference block have identicalpositions in the first image and the second image respectively, when theposition of the current block is corrected by a disparity vector betweenthe view of the first image and the view of the second image.
 7. Themethod according to claim 1, for temporally successive images capturedby an image acquisition device, wherein the first image corresponds toan image captured after the capture of the second image, and wherein thecurrent block and the reference block represent a common scene in thefirst and second images respectively.
 8. The method according to claim1, for texture images captured in association with depth images, whereinthe first image is a depth image and the second image is the textureimage associated with the first image, and wherein the current block andthe reference block have identical positions in the first image andsecond image respectively.
 9. A non-transitory computer-readable mediumcomprising a computer program stored thereon and comprising instructionsfor implementing a method of encoding when the program is executed by aprocessor, wherein the method comprises the following acts performed byan encoding device: encoding at least one current block of a first imagerelative to a decoded reference block of a second image comprising atleast one element in common with said first image, said reference blockhaving been previously been encoded then decoded, wherein encodingcomprises: filtering the decoded reference block; estimating, solely onthe basis of said filtered decoded reference block, at least one valueof a local characteristic of the filtered decoded reference block;determining, on the basis of the estimated value of the localcharacteristic: a set of encoding information to be used for encodingthe current block, a method for encoding the current block, on the basisof the estimated value of the local characteristic, encoding the currentblock on the basis of said determined set of encoding information andaccording to said determined encoding method.
 10. An apparatuscomprising: an encoder configured to encode at least one current blockof a first image relative to a reference block of a second imagecomprising at least one element in common with said first image, saidreference block having been previously encoded and then decoded, whereinthe encoder comprises: a unit configured to filter the decoded referenceblock, a unit configured to estimate, solely on the basis of saidfiltered decoded reference block, at least one value of a localcharacteristic of the filtered decoded reference block; a unitconfigured to determine, on the basis of said estimated value of a localcharacteristic: a set of encoding information to be used for encodingthe current block, a method for encoding the current block; and anencoding unit which is configured to encode, on the basis of theestimated value of the local characteristic, the current block on thebasis of said determined set of encoding information and according tosaid determined encoding method.
 11. A decoder for decoding at least oneencoded current block of a first image relative to a reference block ofa second image comprising at least one element in common with said firstimage, said reference block having previously been decoded, wherein thedecoder comprises: a unit configured to filter the decoded referenceblock, a unit configured to estimate, solely on the basis of saidfiltered decoded reference block, at least one value of a localcharacteristic of the filtered decoded reference block; a unitconfigured to determine, on the basis of the estimated value of thelocal characteristic: a set of decoding information to be used fordecoding the current block, a method for decoding the current block; anda decoding unit which is configured to decode, on the basis of theestimated value of the local characteristic, the current block on thebasis of said determined set of decoding information and according tosaid determined decoding method.
 12. The apparatus according to claim10, further comprising: a decoder, said decoder comprising: a unitconfigured to filter the decoded reference block, a unit configured toestimate, solely on the basis of said filtered decoded reference block,at least one value of a local characteristic of the filtered decodedreference block; a unit configured to determine, on the basis of theestimated value of the local characteristic: a set of decodinginformation to be used for decoding the current block, a method fordecoding the current block; and a decoding unit which is configured todecode, on the basis of the estimated value of the local characteristic,the current block on the basis of said determined set of decodinginformation and according to said determined decoding method, theapparatus further comprising a transmission unit configured to transmitcoded blocks to the encoder for block based image coding.
 13. The methodaccording to claim 2, wherein the decoding of the current blockaccording to said determined decoding method is: direct, where thedecoding information of said determined set is used as is to predict thecurrent block, indirect, where during encoding, the encoding informationof said determined set competes with predetermined encoding informationon the basis of a coding performance criterion, to select the optimalencoding information to be used to predict the current block, and whereduring decoding, the optimal encoding information is read so as toselect the corresponding decoding information in said determined set ofdecoding information in order to predict the current block.
 14. Themethod according to claim 2, wherein a first threshold and a secondthreshold are predetermined, said first threshold being greater than thesecond threshold, and wherein: if the estimated value of the localcharacteristic is higher than the first threshold, said method fordirect decoding is used; if the estimated value of the localcharacteristic is between the first threshold and the second threshold,said method for indirect decoding is used; otherwise, a method fordecoding other than said direct and indirect methods is used.
 15. Themethod according to claim 2, wherein: said decoding information includesat least one decoding mode, or at least one decoding parameterassociated with said decoding mode, or both.
 16. The method according toclaim 2, for images initially captured by a plurality of imageacquisition devices, wherein, each image representing a given view, thefirst image corresponds to a view adjacent to the second image, andwherein the current block and the reference block have identicalpositions in the first image and the second image respectively, when theposition of the current block is corrected by a disparity vector betweenthe view of the first image and the view of the second image.
 17. Themethod according to claim 2, for temporally successive images capturedby an image acquisition device, wherein the first image corresponds toan image captured after the capture of the second image, and wherein thecurrent block and the reference block represent a common scene in thefirst and second images respectively.
 18. The method according to claim2, for texture images captured in association with depth images, whereinthe first image is a depth image and the second image is the textureimage associated with the first image, and wherein the current block andthe reference block have identical positions in the first image andsecond image respectively.
 19. A non-transitory computer-readable mediumcomprising a computer program stored thereon and comprising instructionsfor implementing a method of decoding when the program is executed by aprocessor, wherein the method comprises the following acts performed byan decoding device: decoding at least one encoded current block of afirst image relative to a decoded reference block of a second imagecomprising at least one element in common with said first image, saidreference block having previously been decoded, wherein decodingcomprises: filtering the decoded reference block; estimating, solely onthe basis of said filtered decoded reference block, at least one valueof a local characteristic of the filtered decoded reference block;determining, on the basis of the estimated value of the localcharacteristic: a set of decoding information to be used for decodingthe current block, a method for decoding the current block, on the basisof the estimated value of the local characteristic, decoding the currentblock on the basis of said determined set of decoding information andaccording to said determined decoding method.